b7393433dec4769cfaa49bada2d3bc71eb4bf192,drools-core/src/main/java/org/drools/core/factmodel/DefaultBeanClassBuilder.java,DefaultBeanClassBuilder,buildSerializationMethods,#ClassWriter#ClassDefinition#,123

Before Change


                                    "writeObject",
                                    "(Ljava/lang/Object;)V" );

                mv.visitVarInsn( ALOAD, 1 );
                mv.visitVarInsn( ALOAD, 0 );
                mv.visitFieldInsn( Opcodes.GETFIELD,
                                   BuildUtils.getInternalType( classDef.getClassName() ),
                                   TraitableBean.FIELDTMS_FIELD_NAME,
                                   Type.getDescriptor( TraitFieldTMS.class ) );
                mv.visitMethodInsn( INVOKEINTERFACE,
                                    "java/io/ObjectOutput",
                                    "writeObject",
                                    "(Ljava/lang/Object;)V" );
            }

            mv.visitInsn(RETURN);

After Change


                                    "writeObject",
                                    "(Ljava/lang/Object;)V" );

                if ( classDef.isFullTraiting() ) {
                    mv.visitVarInsn( ALOAD, 1 );
                    mv.visitVarInsn( ALOAD, 0 );
                    mv.visitFieldInsn( Opcodes.GETFIELD,
                                       BuildUtils.getInternalType( classDef.getClassName() ),
                                       TraitableBean.FIELDTMS_FIELD_NAME,
                                       Type.getDescriptor( TraitFieldTMS.class ) );
                    mv.visitMethodInsn( INVOKEINTERFACE,
                                        "java/io/ObjectOutput",
                                        "writeObject",
                                        "(Ljava/lang/Object;)V" );
                }
            }